package com.bytz.modules.cms.order.service;


import com.bytz.modules.cms.domain.model.pay.BalancePayIn;
import com.bytz.modules.cms.domain.model.pay.PayOut;
import com.bytz.modules.cms.domain.model.pay.PrepayIn;
import com.bytz.modules.cms.order.model.GetOrderPayListOut;

import java.math.BigDecimal;

/**
 * 商城支付服务
 * @author shanxuezhong
 */
public interface IMallOrderPayService {

    /**
     * 获取订单支付数据
     */
    GetOrderPayListOut getByOrderId(String orderId);

    /**
     * 首付款数据准备
     */
    PayOut prepay(PrepayIn prepay);

    /**
     * 尾款数据准备
     */
    PayOut balancePay(BalancePayIn balance);

    /**
     * 计算预付金额
     */
    BigDecimal calculatePrepayPrice(String orderId);
}
